1. Field of the Disclosure
This application generally relates to maximizing bootability of a computer system using devices with multiple logical unit numbers (LUNs), multiple logical disks, and related matters.
2. Background of the Disclosure
“Flash memory” is a commonly used term for non-volatile data storage that can be read and written multiple times. Flash memory is often used in USB flash drives, sometimes called “flash drives”, which are devices including memory which can communicate with a computer system using a universal serial bus (USB) protocol. Flash drives can often maintain relatively large amounts of data, often sufficiently large that operating system software and a suite of application program software can be maintained in the flash memory. Moreover, most flash drives are sufficiently small that they can draw their power requirements from the computer system to which they are connected.
One consequence of being able to store such relatively large amounts of data is that flash drives might be used to maintain an entire operating environment, including both operating system software and application software, as well as documents or other data in use or saved by a user. An operating environment that can be carried about, often on a key ring or in a pocket, is sometimes called a “portable operating environment”. For example, one such environment is the “Windows to Go”™ environment promoted by Microsoft Corporation of Redmond, Wash. A first advantage of a portable operating environment is that a user can maintain an entire set of settings for personalized use on any available computer system. A second advantage of a portable operating environment is that a user can conduct their computer processing on any available computer system, without leaving personal or otherwise sensitive data for later review by unauthorized persons.
Flash drives might be able to maintain more than one such operating environment. While this has the general advantage of flexibility, it might be subject to the drawback that the computer system might not be able to access all of the operating environments maintained on a single flash drive. For example, the “Windows to Go”™ environment described above generally requires that each device coupled to the computer system has only one logical unit number (LUN). Logical unit numbers might refer to logical disks, such as separate disk images maintained on a single physical device. This has the effect that only one logical disk maintained by a flash drive, and only one such operating environment, might be accessed by a computer system so configured.
This can pose a problem when it is desired to separate functions available on a flash drive into more than one such operating environment. For a first example, as described in the Incorporated Disclosures, it might be desirable to maintain a first operating environment as a preboot environment, which performs a first set of functions, and a second operating environment as a regular operating environment, which performs a second set of functions. In one such case, as described in the Incorporated Disclosures, the preboot environment might perform security checks and anti-malware functions, while the regular operating environment performs functions the user expects from a portable operating environment. This has the effect that the user can be assured of the security of the preboot environment, and hence of the regular operating environment.
For a second example, it might be desirable to maintain a first operating environment with a first set of operating system capabilities and application programs, and a second operating environment with a second set of operating system capabilities and application programs. The user might desire to operate within the first operating environment in a first set of use cases, or within the second operating environment in a second set of use cases. For a third example, it might be desirable to maintain a first operating environment with a first set of access capabilities or access restrictions, and a second operating environment with a second set of access capabilities or access restrictions. A first set of users might access the flash drive to operate within the first operating environment, or a second set of users might access the flash drive cases to operate within the second operating environment. In such cases, a transition between the first operating environment and the second operating environment might pose difficulties for a user, particularly a user who wishes to maintain availability of data across that transition.
It thus might occur that the computer system is substantially unable, either because of its hardware or software configuration, to access more than one separate logical disk on a single device. This might have the effect that the computer system might not support access to more than one operating environment on separate logical disks on a single flash drive.
One possibility is to provide, when initially booting, that the computer system can select one of several operating environments into which to boot. For example, the computer system might select one of several alternative operating environments, either from a flash drive, a hard disk drive, or other storage device. While this can provide the user with flexibility of selecting an operating environment, it is subject to some disadvantages. For a first example, if operation of the computer system involves booting into more than one operating environment, as described in the Incorporated Disclosures with respect to the preboot environment, the user might fail, accidentally or deliberately, to follow the procedure for that operation. For a second example, booting into more than one operating environment successively might involve a degree of sophistication not generally available to the user.
Each of these examples, as well as other possible considerations, can cause difficulty in use of a flash memory with one or more portable operating environment, particularly when reliability and security of those portable operating environments are important to the user. For example, the user should take care that the flash memory device boots into each successive operating environment in turn, as directed by the procedures followed by instructions on that flash memory device. Moreover, the user should take care that they conduct operations for booting into successive operating environments correctly, possibly drawing on additional expertise each time the computer system is started using the flash drive to provide a portable operating environment. Each of these might have a detrimental effect on the value of the computer system and on use of a flash drive with more than one operating environment.